<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>原型链</title>
</head>
<body>

<script>

// function M(name) {
//   this.name = name
//   this.say = function () {
//     console.log(`say ${this.name}`)
//   }
// }
//
// var o3 = new M('o3')
// var o4 = new M('o4')
// o3.say()
// o4.say()

/*
* 以上o3,o4 是通过构造函数new出来2个实例，2个实例都保存着同样的say方法，
* say的方法功能都是一样的，这样会导致内存的占用，如何解决内存占用问题？
*/

// 方法如下
function M(name) {
  this.name = name
}

M.prototype.say = function () {
  console.log(`say ${this.name}`)
}

var o3 = new M('o3')
var o4 = new M('o4')
o3.say()
o4.say()




</script>

</body>
</html>